Votre tâche consiste à implémenter un arbre binaire de recherche prenant en charge quatre opérations clés.
- Le nombre d'opérations est $N$, avec $1 \le N \le 2 \cdot 10^5$.
- ins k: Insérer une clé entière $k$ dans l'arbre. Si $k$ existe déjà, cette opération ne fait rien.
- trouve k: Rechercher la clé $k$. Renvoyer 'true' si elle existe, sinon 'false'.
- succ k: Trouver le successeur de $k$ — la plus petite clé de l'arbre strictement supérieure à $k$. Renvoyer 'null' s'il n'existe pas.
- préd k: Trouver le prédécesseur de $k$ — la plus grande clé de l'arbre strictement inférieure à $k$. Renvoyer 'null' s'il n'existe pas.
- Hypothèse clé : Pour les requêtes de successeur et de prédécesseur, la clé $k$ est garantie présente dans l'arbre.